package com.dd.controller;

import javafx.fxml.FXML;
import javafx.fxml.FXMLLoader;
import javafx.scene.Parent;
import javafx.scene.control.Alert;
import javafx.scene.layout.VBox;

import java.io.IOException;

public class StatisticsMenuController {

    @FXML
    private VBox rootVBox; // 获取根VBox，用于替换内容

    private void loadStatisticView(String fxmlFileName, String title) {
        try {
            FXMLLoader loader = new FXMLLoader(getClass().getResource("/com/dd/" + fxmlFileName));
            Parent content = loader.load();
            // 替换当前VBox的所有子节点
            rootVBox.getChildren().setAll(content);
            // 或者，如果您希望每次点击都回到主菜单，并把统计图显示在MainMenuController的contentArea中
            // 那么这个方法应该在MainMenuController中实现
            // 为了简化，我们这里直接替换当前VBox的内容，这意味着需要返回按钮来回到统计菜单

        } catch (IOException e) {
            e.printStackTrace();
            showAlert(Alert.AlertType.ERROR, "加载失败", "无法加载统计界面：" + title);
        }
    }

    @FXML
    private void showProvinceStats() {
        loadStatisticView("province-aqi-stats.fxml", "省分组检查统计");
    }

    @FXML
    private void showAqiDistributionStats() {
        // 实现AQI指数分布统计
        showAlert(Alert.AlertType.INFORMATION, "提示", "AQI指数分布统计功能待实现。");
    }

    @FXML
    private void showAqiTrendStats() {
        // 实现AQI指数趋势统计
        showAlert(Alert.AlertType.INFORMATION, "提示", "AQI指数趋势统计功能待实现。");
    }

    @FXML
    private void showRealtimeStats() {
        // 实现空气质量检测数量实时统计
        showAlert(Alert.AlertType.INFORMATION, "提示", "空气质量检测数量实时统计功能待实现。");
    }

    @FXML
    private void showCoverageStats() {
        // 实现全国网格覆盖率统计
        showAlert(Alert.AlertType.INFORMATION, "提示", "全国网格覆盖率统计功能待实现。");
    }

    private void showAlert(Alert.AlertType alertType, String title, String message) {
        Alert alert = new Alert(alertType);
        alert.setTitle(title);
        alert.setHeaderText(null);
        alert.setContentText(message);
        alert.showAndWait();
    }
}
